---
id: lecture-templates-intro
slug: /lectures/templates
sidebar_position: 1
--- 

# Шаблоны

## План

1. Принципы разработки: KISS, DRY, YAGNI, BDUF, APO и бритва Оккама.
2. Понятие шаблона функции и шаблонной функции. Выведение типов шаблонных аргументов. Специализация шаблона функции. Примеры шаблонов функций.
3. Понятие шаблона классов и шаблонного класса. Параметры шаблонов классов. Специализация шаблона класса. Примеры шаблонов классов.
4. Частичная специализация.
5. Наследование и шаблоны классов.
6. Статические проверки.
7. typedef и using для определения псевдонимов. Шаблон псевдонима.

## Материал

- [Презентация](https://iu5edu.ru/wiki/cpp2/presentations/templates/presentation.html)

## Видеозапись

<iframe src="https://vk.com/video_ext.php?oid=-211704031&id=456239148" width="100%" height="480" allow="autoplay; encrypted-media; fullscreen; picture-in-picture;" frameborder="0" allowfullscreen></iframe>
